This section is intended to introduce the reader to various aspects of art, which may be related to various aspects of the present invention that are described and/or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present invention. Accordingly, it should be understood that these statements are to be read in this light, and not as admissions of prior art.
Since the introduction of the first personal computer (“PC”) over 20 years ago, technological advances to make PCs more useful have continued at an amazing rate. Microprocessors that control PCs have become faster and faster, with operational speeds eclipsing a gigahertz (one billion operations per second) and continuing well beyond.
Productivity has also increased tremendously because of the explosion in the development of software applications. In the early days of the PC, people who could write their own programs were practically the only ones who could make productive use of their computers. Today, there are thousands and thousands of software applications ranging from games to word processors and from voice recognition to web browsers.
The Evolution of Networked Computing
In addition to improvements in PC hardware and software, the technology for making computers more useful by allowing users to connect PCs together and share resources between them has also seen rapid growth in recent years. This technology is generally referred to as “networking.” In a networked computing environment, PCs belonging to many users are connected together so that they may communicate with each other. In this way, users can share access to each other's files and other resources, such as printers. Networked computing also allows users to share Internet connections, which may result in significant cost savings. Networked computing has revolutionized the way in which business is conducted across the world.
Not surprisingly, the evolution of networked computing has presented technologists with some challenging obstacles along the way. One obstacle of connecting computers that use different operating systems (“OSes”) is making them communicate efficiently with each other over a network. Each different OS (or even variations of the same OS) has its own idiosyncrasies of operation and configuration. The interconnection of computers running different OSes presents significant ongoing issues that make day-to-day management of a computer network challenging.
Another significant challenge presented by the evolution of computer networking is the sheer scope of modern computer networks. At one end of the spectrum, a small business or home network may include a few client computers connected to a common server that may provide a shared printer and/or a shared Internet connection. On the other end of the spectrum, a global company's network environment may require interconnection of hundreds or even thousands of computers across large buildings, a campus environment, or even between groups of computers in different cities and countries. Such a configuration would typically include a large number of servers, each connected to numerous client computers.
Further, the arrangements of servers and clients in a larger network environment could be connected in any of a large number of topologies that may include local area networks (“LANs”), wide area networks (“WANs”) and metropolitan area networks (“MANs”). In these larger networks, a problem with a server (a failed hard drive, corrupted system software, failed network interface card or OS lock-up, for example) has the potential to interrupt the operation of a large number of workers who depend on network resources to complete certain tasks efficiently. Needless to say, companies devote considerable time and effort to keep their networks operating to maximize productivity.
To keep computer systems operating and to resolve network problems as fast as possible, many computer systems may include automatic failure detection and correction hardware and/or software. If a problem, such as a hard drive failure, occurs, a message may be automatically sent to a member of the network support team. These automated messages may include messages to a telephone or pager. Automated failure messages may also be sent to network personnel via email. If a computing resource that is used by a large number of client systems experiences a problem, many duplicate messages to the network support team may be generated. These redundant messages may take up computer network resources, while providing little or no tangible benefit.